package com.ruoyi.project.system.mapper;

import com.ruoyi.project.system.domain.ResTable;
import org.apache.ibatis.annotations.Param;

/**
 * 数据库操作接口（MyBatis原生）
 */
public interface DiagnosisCancelMapper {

    /**
     * 根据 resId 查询 res_table 记录
     * @param resId 前端传递的病人唯一标识
     * @return ResTable 实体（匹配的记录）
     */
    ResTable selectByResId(@Param("resId") String resId);

    /**
     * 根据 resId 更新 resolve 字段为 2
     * @param resId 病人唯一标识
     * @param resolve 要更新的状态值（固定为2）
     * @return 影响的行数（1=更新成功，0=无匹配记录）
     */
    int updateResolveByResId(@Param("resId") String resId, @Param("resolve") Integer resolve);

    // 新增：插入prescription表
    int insertPrescription(
        @Param("resId") String resId,
        @Param("symptoms") String symptoms,
        @Param("description") String description
    );

    // 新增：插入选择模式的康复建议（per_suggest_list）
    int insertSelectionSuggest(
        @Param("resId") String resId,
        @Param("mode") int mode,
        @Param("sports") String sports,
        @Param("diet") String diet,
        @Param("sleep") String sleep
    );

    // 新增：插入手写模式的康复建议（per_suggest_list）
    int insertOtherSuggest(
        @Param("resId") String resId,
        @Param("mode") int mode,
        @Param("other") String other
    );

    // 新增：插入药品信息（prescription_medicine）
    int insertMedicine(
        @Param("resId") String resId,
        @Param("medId") Long medId,
        @Param("number") int number
    );
}